package com.cr4y0n.crayonpicturebackend.model.dto.picture;

import com.cr4y0n.crayonpicturebackend.common.PageRequest;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 图片查询请求
 *
 * @author cr4y0n
 * @version 1.0.0
 */
@ApiModel("图片查询请求")
@EqualsAndHashCode(callSuper = true)
@Data
@Builder
public class PictureQueryRequest extends PageRequest implements Serializable {

    @ApiModelProperty("id")
    private Long id;

    @ApiModelProperty("图片名称")
    private String name;

    @ApiModelProperty("简介")
    private String introduction;

    @ApiModelProperty("分类")
    private String category;

    @ApiModelProperty("标签")
    private List<String> tags;

    @ApiModelProperty("文件体积")
    private Long picSize;

    @ApiModelProperty("图片宽度")
    private Integer picWidth;

    @ApiModelProperty("图片高度")
    private Integer picHeight;

    @ApiModelProperty("图片比例")
    private Double picScale;

    @ApiModelProperty("图片格式")
    private String picFormat;

    @ApiModelProperty("搜索词（同时搜名称、简介等）")
    private String searchText;

    @ApiModelProperty("用户 id")
    private Long userId;

    @ApiModelProperty("审核状态：0-待审核; 1-通过; 2-拒绝")
    private Integer reviewStatus;

    @ApiModelProperty("审核信息")
    private String reviewMessage;

    @ApiModelProperty("审核人 ID")
    private Long reviewerId;

    @ApiModelProperty("审核时间")
    private Date reviewTime;

//    /**
//     * 空间 id
//     */
//    private Long spaceId;
//
//    /**
//     * 是否只查询 spaceId 为 null 的数据
//     */
//    private boolean nullSpaceId;
//
//    /*
//     * 开始编辑时间
//     */
//    private Date startEditTime;
//
//    /*
//     * 结束编辑时间
//     */
//    private Date endEditTime;

    private static final long serialVersionUID = 1L;
}
